<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="cache-control" content="no-cache">
<title>Genivia - SOAP_ENV__Header Struct Reference</title>
<link href="genivia_tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="genivia_content.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="top">
 <div id="titlearea">
  <table height="72px" width="100%" cellspacing="0" cellpadding="0">
   <tbody>
    <tr>
     <td width="10%">&nbsp;</td>
     <td width="175px"><a href="https://www.genivia.com"><img alt="Genivia" src="GeniviaLogo2_trans_noslogan.png"/></a></td>
     <td class="tab_home"><a href="https://www.genivia.com">Home</a></td>
     <td class="tab_home"><a href="https://www.genivia.com/docs.html">Documentation</a></td>
     <td>
      <div style="float: right; font-size: 18px; font-weight: bold;">SOAP_ENV__Header Struct Reference</div>
      <br>
      <div style="float: right; font-size: 10px;">updated Tue Apr 20 2021 by Robert van Engelen</div>
     </td>
     <td width="10%">&nbsp;</td>
    </tr>
   </tbody>
  </table>
 </div>
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('struct_s_o_a_p___e_n_v_____header.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">SOAP_ENV__Header Struct Reference<div class="ingroups"><a class="el" href="group__group__header.html">Header structure and functions</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>SOAP Header structure.  
 <a href="struct_s_o_a_p___e_n_v_____header.html#details">More...</a></p>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>SOAP Header structure. </p>
<p>This structure is generated by the wsdl2h tool from a WSDL with SOAP Header definitions and/or by soapcpp2 to complete the SOAP Header definitions. The SOAP Header definitions can also be specified manually in the interface header file for soapcpp2. If no SOAP Header structure is declared in the interface header file input to soapcpp2 then the soapcpp2 tool will generate an empty structure.</p>
<p>A SOAP Header contains meta-data, such as WS-Addressing and WS-Security headers, associated with messages. SOAP Header elements may be marked with <code>mustUnderstand</code> which produces and recognizes <em><code>SOAP_ENV:mustUnderstand="true"</code></em> in XML to force the receiver to produce an error if the header element was not recognized.</p>
<p>The <code>//gsoap &lt;prefix&gt; service method-input-header-part:</code> and <code>//gsoap &lt;prefix&gt; service method-output-header-part:</code> directives indicates which member (i.e. XML element) of <code><a class="el" href="struct_s_o_a_p___e_n_v_____header.html" title="SOAP Header structure. ">SOAP_ENV__Header</a></code> is relevant to the input and output SOAP Headers associated with a service operation.</p>
<p>Because this structure is declared <code>mutable</code> (which is a C/C++ extension that only soapcpp2 understands), multiple <code><a class="el" href="struct_s_o_a_p___e_n_v_____header.html" title="SOAP Header structure. ">SOAP_ENV__Header</a></code> structures in the interface header file input are combined into one structure generated by soapcpp2 for C/C++ compilation.</p>
<dl class="section user"><dt>Example:</dt><dd></dd></dl>
<div class="fragment"><div class="line"><span class="comment">// example .h file for soapcpp2</span></div><div class="line"><span class="comment">//gsoap ns service name: example</span></div><div class="line"><span class="comment">//gsoap ns service namespace: urn:example</span></div><div class="line"><span class="keyword">struct </span><a class="code" href="struct_s_o_a_p___e_n_v_____header.html">SOAP_ENV__Header</a> {</div><div class="line">  mustUnderstand <span class="keywordtype">int</span> *ns__someHeaderValue; <span class="comment">// optional element with SOAP_ENV:mustUnderstand=&quot;true&quot; attribute</span></div><div class="line">};</div><div class="line"><span class="comment">//gsoap ns service method-input-header-part: webmethod ns__someHeaderValue</span></div><div class="line"><span class="comment">//gsoap ns service method-output-header-part: webmethod ns__someHeaderValue</span></div><div class="line"><span class="keywordtype">int</span> ns__webmethod(...);</div></div><!-- fragment --><div class="fragment"><div class="line"><span class="preprocessor">#include &quot;soapH.h&quot;</span></div><div class="line"></div><div class="line"><span class="keyword">struct </span>soap *soap = <a class="code" href="group__group__context.html#ga87c20488b2dc680aaa7689b1d024989c">soap_new</a>();</div><div class="line">... <span class="comment">// context initializations</span></div><div class="line"><span class="comment">// add a SOAP Header to the message</span></div><div class="line">soap-&gt;<a class="code" href="structsoap.html#ac091dfe4e01b6a082d916c381e7006ba">header</a> = NULL; <span class="comment">// make sure we allocate a new header</span></div><div class="line"><a class="code" href="group__group__header.html#ga08d35d1900a1982fdde6f78e43fc9635">soap_header</a>(soap);   <span class="comment">// allocate SOAP_ENV__Header and set soap-&gt;header to point to it</span></div><div class="line"><span class="keywordtype">int</span> num = 123;</div><div class="line">soap-&gt;<a class="code" href="structsoap.html#ac091dfe4e01b6a082d916c381e7006ba">header</a>-&gt;ns__someHeaderValue = &amp;num;</div><div class="line"><span class="keywordflow">if</span> (soap_call_ns__webmethod(soap, <a class="code" href="structsoap.html#aed1b86b8a34aea86103751a932c9dce9">endpoint</a>, NULL, ...))</div><div class="line">{</div><div class="line">  <a class="code" href="group__group__fault.html#ga931a4ab6df2553b48a0c270f8a0a88af">soap_print_fault</a>(soap, stderr);</div><div class="line">}</div><div class="line"><span class="keywordflow">else</span></div><div class="line">{</div><div class="line">  <span class="keywordflow">if</span> (soap-&gt;<a class="code" href="structsoap.html#ac091dfe4e01b6a082d916c381e7006ba">header</a>) <span class="comment">// received a SOAP_ENV__Header?</span></div><div class="line">    ... <span class="comment">// yes, inspect SOAP_ENV__Header ns__someHeaderValue</span></div><div class="line">}</div><div class="line"><a class="code" href="group__group__context.html#gaf7d0176161e9def36981e24faa1913d9">soap_destroy</a>(soap);</div><div class="line"><a class="code" href="group__group__context.html#ga81a009ae1ea825a05e5241e2b7a8ece9">soap_end</a>(soap);</div><div class="line"><a class="code" href="group__group__context.html#ga57108ca4681186e58b5b189c3528f10a">soap_free</a>(soap);</div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><code><a class="el" href="structsoap.html#ac091dfe4e01b6a082d916c381e7006ba" title="The soap::header points to a SOAP_ENV__Header structure with the SOAP Header that was received or tha...">soap::header</a></code>, <code><a class="el" href="structsoap.html#abda4ccd0d64f76eb57145cc4890c87b2" title="User-definable SOAP-ENV:actor (SOAP 1.1) or SOAP-ENV:role (SOAP 1.2) attribute value of all SOAP-ENV:...">soap::actor</a></code>, <code><a class="el" href="group__group__header.html#ga08d35d1900a1982fdde6f78e43fc9635" title="If soap::header is NULL then allocate SOAP_ENV__Header header and set soap::header to point to it...">soap_header</a></code>. </dd></dl>
</div></div><!-- contents -->
</div><!-- doc-content -->
<hr class="footer">
<address class="footer">
Copyright (C) 2021, Robert van Engelen, Genivia Inc., All Rights Reserved.
</address>
<address class="footer"><small>
Converted on Tue Apr 20 2021 19:48:13 by <a target="_blank" href="http://www.doxygen.org/index.html">Doxygen</a> 1.8.11</small></address>
<br>
<div style="height: 246px; background: #DBDBDB;">
</body>
</html>
